
#import "SavingsCalculatorLampType.h"
#import "SavingsCalculatorLampCalculation.h"

@class SavingsCalculatorLampCalculation;

@interface SavingsCalculator : NSObject

@property (nonatomic, readonly) NSInteger calculationYears;
@property (nonatomic, readonly) NSInteger calculationHours;
@property (nonatomic, readonly) CGFloat energyPriceKWh;

@property (nonatomic, strong) NSArray *luminousFluxRange;
@property (nonatomic, readonly) SavingsCalculatorLampCalculation *oldLampCalculation;

// Substitutes
@property (nonatomic, readonly) NSArray *substitutes;
@property (nonatomic, readonly) NSMutableArray *substCalculation;

-(instancetype)initWithLampTypeWithKey:(NSString *)lampTypeKey effect:(CGFloat)effect NS_DESIGNATED_INITIALIZER;
-(void)setPurchasePrice:(float)price forSubstituteAtIndex:(NSInteger)index;
-(void)resetPurchasePriceForSubstituteAtIndex:(NSInteger)index;
-(float)defaultPriceForSubstituteAtIndex:(NSInteger)index;
-(float)purchasePriceForSubstituteAtIndex:(NSInteger)index;
-(float)savingsForSubstituteAtIndex:(NSInteger)index;
-(float)savingsForSubstituteAtIndex:(NSInteger)index usePurchasePrice:(float)price;

@end
